define(function (require) {

    require('../../../c/base/index');

    require('../../../c/nav/index');

    var selfShop = {
        init: function () {
            //初始化菜单选中效果
            $(".fa-circle-o").each(function () {
                if ($(this).parents("a").text() == "自营店铺管理") {
                    $(this).parents("a").parents("li").addClass("active");
                }
            });
            this.initShopTable();
            this.bindEvent();
        },
        /**
         * 初始化店铺的列表
         */
        initShopTable: function () {
            var self = this;
            $("#shop_table").dataTable({
                "oLanguage": CRM.pageConfig,
                "sScrollX": "100%",   //表格的宽度
                "sScrollXInner": "100%",   //表格的内容宽度
                "bScrollCollapse": true,  //当显示的数据不足以支撑表格的默认的高度时，依然显示纵向的滚动条。(默认是false)
                "bPaginate": true,  //是否显示分页
                "bLengthChange": true,  //每页显示的记录数
                "bFilter": false, //搜索栏
                "bSort": false, //是否支持排序功能
                "bInfo": true, //显示表格信息
                "bAutoWidth": false,  //自适应宽度
                "bServerSide": true,//开启服务端处理
                "sAjaxSource": CRM.getOuterUrl('/shop/shop/searchPrivatePiFaShop'),
                "fnInitComplete": function () {
                    this.fnAdjustColumnSizing(true);
                },
                "fnServerData": function (sSource, aoData, fnCallback) {
                    var _url = CRM.getOuterUrl('/shop/shop/searchPrivatePiFaShop');
                    var dataString = JSON.stringify({
                        "pageBegin": aoData[3].value / aoData[4].value + 1,
                        "pageSize": aoData[4].value,
                        "operator": $.cookie('_uk')
                    });
                    CRM.request({
                        "type": 'POST',
                        "url": _url,
                        "dataType": "json",
                        contentType: "application/json",
                        xhrFields: {
                            withCredentials: true
                        },
                        "data": dataString,
                        contentType: "application/json",
                        "success": function (req) {
                            if (req.responseCode && req.status) {
                                var resultData = CRM.getDataTabelDtaObject();
                                if (req.entry) {
                                    resultData.iTotalDisplayRecords = req.entry.num;
                                    resultData.iTotalRecords = req.entry.num;
                                    for (var length in req.entry.docs) {
                                        resultData.aaData.push([
                                            req.entry.docs[length].id,
                                            CRM.htmlEncode(req.entry.docs[length].shopName),
                                            CRM.htmlEncode(req.entry.docs[length].city),
                                            CRM.htmlEncode(req.entry.docs[length].ownerName),
                                            CRM.htmlEncode(req.entry.docs[length].statusDesc),
                                            req.entry.docs[length].typeDesc,
                                            req.entry.docs[length].isBalance,
                                            req.entry.docs[length].tagsDesc,
                                            {
                                                "id": req.entry.docs[length].id
                                            }]);
                                    }
                                } else {
                                    CRM.showDialog(req.message);
                                }
                                fnCallback(resultData);
                            } else {
                                CRM.showDialog(req.message);
                            }
                        },
                        error: function (e) {
                            //请求出错处理
                            $("#msg_dialog_content").text("获取店铺列表,请求服务异常！");
                            $('#msg_dialog').modal('show');
                        }
                    });
                },
                "aaSorting": [[1, "asc"]],  //给列表排序 ，第一个参数表示数组 (由0开始)。1 表示Browser列。第二个参数为 desc或是asc
                "aoColumns": [
                    {
                        "sTitle": "店铺ID",
                        "bSortable": true
                    },
                    {
                        "sTitle": "店铺名称",
                        "bSortable": true
                    },
                    {
                        "sTitle": "所属城市",
                        "bSortable": true
                    },
                    {
                        "sTitle": "店铺所有者",
                        "bSortable": true
                    },
                    {
                        "sTitle": "店铺状态",
                        "bSortable": true
                    },
                    {
                        "sTitle": "店铺类型",
                        "bSortable": true
                    },
                    {
                        "sTitle": "结算类型",
                        "bSortable": true,
                        "mRender": function (data, type, row) {
                            var html = "未知";
                            if (data == "1") {
                                html = "结算";
                            } else {
                                html = "不结算";
                            }
                            return html;
                        }
                    },
                    {
                        "sTitle": "经营范围",
                        "bSortable": true

                    },
                    {
                        "sTitle": "操作",
                        "bSortable": false,
                        "mRender": function (data) {
                            var id = data.id;
                            var itemUrl = self.getItemUrl(id);
                            var html = '<a  class="btn btn-success" target="_blank" href="' + itemUrl + '">商品管理</a>';
                            return html;
                        }
                    }

                ], //列设置，表有几列，数组就有几项
                "bStateSave": true, //保存状态到cookie *************** 很重要 ， 当搜索的时候页面一刷新会导致搜索的消失。使用这个属性就可避免了
                "sPaginationType": "full_numbers" //分页，一共两种样式，full_numbers和two_button(默认)

            });
        },
        /**
         * 获得商品维护界面
         */
        getItemUrl: function (shopId) {
            return CRM.getOuterUrl('/buyer/shop/proprietary/index.html?page=new-app-page&shopId=' + shopId);
        },
        bindEvent: function () {
        }
    };

    window.doSearch = $.proxy(selfShop.doSearch, selfShop);

    selfShop.init();
});